1. Field of the Invention
This invention relates to a method of compressing image information, in particular, dynamic image information, a compressed image information recording medium, on which compressed image information is recorded, and a compressed image information reproducing apparatus for decompressing and reproducing image information recorded on the compressed image information recording medium.
2. Description of the Related Art
Apparatuses for converting analog image information into digital signals so as to record/reproduce the image information have been known. In this case, the digital image can be obtained by sampling and quantizing the analog signal, the digital image being composed of a predetermined number of vertical and horizontal pixels. Each pixel of the digital image is composed of 8 bits for each of RGB (red, green and blue) so that 256 signal levels for each color is expressed.
However, dynamic image information requires thirty image frames per second and thus a great information quantity must be used to express dynamic image information by digital signals. Therefore, a large memory capacity is required. Accordingly, a variety of methods capable of efficiently compressing digital image information has been developed. Among the various developed compressing methods, a method employing vector quantization can be available. The vector quantization of image information will now be described.
An assumption is made here that digital dynamic image information has been obtained from analog dynamic image information. Initially, each image frame of the digital dynamic image information is divided into a plurality of blocks. FIG. 18 illustrates the division of blocks of each image frame. For example, an image frame 1 composed of 640 vertical pixels (X=640) and 480 horizontal pixels (Y=480) is divided into blocks 2B.sub.ij each of which is composed of 4 vertical pixel and 4 horizontal pixels (x=4, y=4). Each block 2B.sub.ij is composed of 16 pixels, that is, 4 vertical pixels x 4 horizontal pixels. Each pixel 3 (P.sub.ij) of each of the blocks 2 is scanned in a zigzag direction as shown in, for example, FIG. 19. As a result, an image pattern composed of 16 pixels for each block B.sub.ij is expressed by hexadecimal-dimensional vector X=(x.sub.1, x.sub.2, . . . , x.sub.16). Each component x.sub.1, x.sub.2, . . . , x.sub.16 of the vector X expresses signal levels of pixel P.sub.11, P.sub.21, P.sub.12, . . . , P.sub.44 of the block B.sub.ij.
FIG. 20 schematically illustrates distribution of block image pattern vectors in a signal space. A multiplicity of the thus-obtained image pattern vectors X=(x.sub.1, x.sub.2, . . . , x.sub.k, . . . , x.sub.16) is distributed in a hexadecimal signal space. FIG. 20 schematically illustrates the distribution. Assuming that each pixel of each of red, green and blue signals is expressed by 256 signal levels from 0 to 255, the image pattern vector X=(x.sub.1, x.sub.2, . . . , x.sub.16) of each block B.sub.ij for each signal is distributed in a hexadecimal dimensional cube signal space (0.ltoreq.x.sub.1, x.sub.2, . . . , x.sub.k, . . . , x.sub.16 .ltoreq.255) each side of which is 255. The hexadecimal dimensional cube that expresses the image pattern contains 255.sup.16 dots. It can be considered that some hundreds of relatively concentrated clusters C.sub.1, C.sub.2, . . . , C.sub.1, . . . are formed by the block image pattern vector.
The vector quantization is performed as follows: at least one representative vector R.sub.1, R.sub.2, . . . R.sub.1, . . . is selected with respect to each cluster C.sub.1, C.sub.2, . . . , C.sub.1, . . . so that a code book (a table of representative vectors) is made. Then, a representative vector nearest X is determined among the representative vectors contained in the code book with respect to the block image pattern vector X of each block B.sub.ij of each image frame. Thus, image information of each block is coded by means of the number of the determined representative vector. The foregoing process is the vector quantization.
When the vector quantization is performed as described above, the number of the representative vector can be expressed by, for example, 9 bits if an assumption is made that the number of the representative vectors contained in the code book is about some hundreds. Thus, the image information for each block can be compressed significantly. The compression realized by the vector quantization can be applied to compress a still image information as it is.
Another method using a movement compensation frame can be employed to compress dynamic image information. In a case where the movement compensation frame is used, for example, about 5 frames among 30 frames included in one second are used as key frames (frames for holding normal image information) and image frames between the key frames are used as movement compensation frames so that a state of movement of the image with respect to the key frames is described. The movement compensation frame is processed as follows.
Initially each movement compensation frame is divided into blocks Bij composed of a predetermined number of vertical and horizontal pixels as shown in FIG. 18. As shown in FIG. 21, vertical and horizontal movement compensation ranges 6a and 6b of a movement compensation range 4 around a block 5 (B.sub.ij) of the movement compensation frame, that is being processed, are assumed to be .+-.v.sub.0 pixels. Furthermore, an assumption is made that movement vector 8 from block B (V) of the key frame immediately forward the movement compensation range 4 to a present frame block 5 is V. Therefore, if V=(v.sub.1, v.sub.2), thus relationships -v.sub.0 .ltoreq.v.sub.1 and v.sub.2 .ltoreq.+v.sub.0 are held. As a result, with respect to pixel P.sub.k1, (P.sub.k1 .di-elect cons.B.sub.ij) constituting the present frame block 5 (B.sub.ij), subscripts m and n of pixel P.sub.mn (P.sub.mn .di-elect cons.B (V)) constituting the key frame block 7 (B (V)) can be obtained from m=k-v.sub.1 and n=1-v.sub.2, respectively.
Then, from among the key frame blocks 7 (B (V)) contained in the movement compensation range 4 of the blocks 5 (B.sub.ij) of the present compensation frame, a block 7 having an image pattern nearest the image pattern of the present frame block 5 (B.sub.ij) is determined. The vector V of the block 7 (B (V)) is used as the movement vector 8 of the present frame block 5 (B.sub.ij). When image information of the movement compensation frame is reproduced, the movement vector V=(v.sub.1, v.sub.2) of each block B.sub.ij is used in such a manner that the pixel P.sub.mn of the block B (V) corresponding to the key frame 7 immediately forward the movement compensation frame containing the present frame block 5 (B.sub.ij), which is being produced, is determined with respect to each P.sub.k1 .di-elect cons.B.sub.ij by using m=k-v.sub.1 and n=1-v.sub.2. Then, the image pattern of the block 7 B (V) of the key frame is reproduced as the pattern of the present frame block 5 (B.sub.ij).
Also in the case where the movement compensation frame is used for the dynamic image information, the image information of the key frame can be compressed by the foregoing vector quantization method. In a case where the block 7 B (V) of the key frame of the movement compensation range satisfactorily matching with the present frame block 5 (B.sub.ij) of the movement compensation frame is not present, the image pattern of the present frame block 5 (B.sub.ij) can be vector-quantized to compress the same similarly to the key frame.
The vector quantization enables image information to be compressed significantly. However, the vector quantization requires a code book which is processed by determining the representative vector R.sub.i of each cluster C.sub.i formed by the distribution of the sample block image pattern vectors. As an algorithm for determining the representative vector, the LBG algorithm has been used for example. However, vector quantization of a hexadecimal dimensional vector block image pattern, each element of which has 256 levels, takes an excessively long time. The technological level of the present computer cannot perform the foregoing vector quantization.
Although use of the movement compensation frame to compress dynamic image information is an effective compressing method, the compression degree is limited. In order to record dynamic image information composed of an natural image, such as a moving picture, a large storage capacity is required. The present technological level cannot enable a portable reproducing apparatus comprising a ROM (a read-only memory), on which such dynamic image information can be recorded, to be obtained.